Browser-based applications, or web applications, are software applications designed to run in a web browser. Such applications are often available through a web store or digital marketplace and run in a specific browser. Sometimes third parties offer tools or utilities, often referred to as libraries, for web application developers to use in the web applications they create. For example, vendors or other third-party software developers may offer a library of web analytics tools or a library of video streaming tools for use in other web applications. Such third party, or external, libraries often provide functionality the developers could not duplicate on their own without great cost. These external libraries sometimes receive data collected at the browser used to provide some features. Additionally, the external libraries have traditionally been run from the remote server. Thus, a network connection is often required to successfully run the web application so that the client computer running the browser may communicate with the server hosting the library.
While these external libraries expand the functionality of web applications, use of such libraries has caused security issues. Because of this and other issues, some browsers may not allow a web application to execute external libraries themselves. Furthermore, such libraries are not available to a web application when running offline because the web application cannot reach the server that hosts the library. Thus, it would be desirable to guard against web applications that use malicious or untested libraries while still allowing applications to use approved libraries, whether online or offline.